1. Technical Field
The present invention relates in general to an improved data processing system and in particular to a method and system for displaying data flow in a graphic user interface. Still more particularly, the present invention relates to a method and system for indicating dynamic data links in a graphic user interface.
2. Description of the Related Art
The manipulation of data in a data processing system is well known in the prior art. Data may be manipulated in many ways in a data processing system such as, for example: data accessing, data encoding, data communications, data compression, data conversion, data exchange, data linking, data locking, data manipulation, data mapping, data modeling, and data sorting. The large amounts of data that are available to a user of a data processing system often become overwhelming in magnitude and complexity. These situations may arise in the creation and use of data in a number of different applications.
Most graphic user interfaces (GUIs) allow applications to establish dynamic data links (DDLs) for exchanging data between documents, also known as dynamic data exchange (DDE). Typically, these links allow changes in one application document to be immediately reflected in documents produced in other applications. The term "document", when utilized in this application, refers to any type of data object that may be displayed in a window within a GUI, such as, but not limited to, a word processing document, a design drawing, or a spreadsheet. For example, with reference to FIG. 1, a pictorial representation of documents in which DDE may be provided using DDLs. When a user changes values in spreadsheet document 10, the corresponding changes are immediately made in word processor document 12 and graphing software document 14. If the number 70 in cell 11 associated with "dogs" in spreadsheet document 10 is changed to 80, word processor document 12 would reflect a change from 70% to 80% in the sentence located in section 13. Similarly, the graphing software document 14 would change from 70% to 80% in section 15 and bar 16 would change in height to reflect the new number.
When a dynamic data link (DDL) is present between documents, a document may have one of three forms. A document may be a master document, a slave document, or a companion document when performing interprocess communication and DDE, via a DDL. A master document has a DDL which is referred to as a "master" connection, a slave document has a DDL which is referred to as a "slave" connection, and a companion document has a DDL referred to as a "companion" connection.
Referring now to FIG. 2, pictorial representations of the directions of DDE utilizing DDLs in documents is depicted. The arrows in FIG. 2 are provided for indicating the direction of information exchange between documents and are not graphically displayed to a user. Master document 18, also called a "publisher" or "source", is a document that generates data that is transmitted to another document, slave document 20, through a DDL. From the perspective of master document 18, this DDL is a master connection, and from the perspective of the slave document, the DDL is a slave connection. As a result, changes in data associated with a DDL in master document 18 are reflected in slave document 20. Slave document 20, also called a "subscriber" or "target" is a document that receives data from another document, a master document. Changes in slave document 20, however, are not transmitted to master document 18. Companion documents 21 and 22 both transmit and receive document changes to each other. Thus, any changes made to companion document 21 are reflected in companion document 22, and any changes made to companion document 22 are reflected in companion document 21. Thus, a companion document fulfills the role of a both a master and slave document.
As a result, users of the DDE features provided through DDLs are freed from the task of changing data in multiple documents. DDE integrates all associated documents, thereby providing a more flexible and powerful graphic user interface (GUI) environment.
Existing GUI environments do not have adequate user interfaces to represent the DDLs involved in DDE. When editing a document, users often require knowledge of which other documents are exchanging data with the document in the foreground process. A visual representation of this connection information would be useful to enable users to foresee how changes in one document may affect other documents.
A visual representation for illustrating DDLs to users in a graphic user interface that provides information about active DDLs involving the foreground document is desirable. Such an interface should indicate the nature of each DDL and which documents are linked with the foreground document. Additionally, it would be desirable to indicate which documents in a GUI are capable of DDE. A useful GUI system should be unobtrusive, require minimal screen space, and be easy to utilize. The GUI system should also provide a constant visual indication of which documents affect or are affected by the foreground documents. The GUI system should be updated unobtrusively to reflect changes as DDLs are established and terminated. Also, such a GUI system should provide users with a method for switching directly from one foreground document to any of the linked documents.
Therefore it would be desirable to have an improved method and system for representing DDLs between applications in a GUI environment that is unobtrusive and provides a visual indication about linking capabilities and active DDLs between documents.